#!/bin/sh
#
# sshd        Starts sshd.
#

umask 077

start() {
	# Make sure the ssh-keygen progam exists
	[ -f /usr/bin/ssh-keygen ] || exit 0

	# Check for the SSH1 RSA key
	if [ ! -f /etc/ssh_host_key ] ; then
		echo Generating RSA Key...
		/usr/bin/ssh-keygen -t rsa1 -f /etc/ssh_host_key -C '' -N ''
	fi

	# Check for the SSH2 RSA key
	if [ ! -f /etc/ssh_host_rsa_key ] ; then
		echo Generating RSA Key...
		/usr/bin/ssh-keygen -t rsa -f /etc/ssh_host_rsa_key -C '' -N ''
	fi

	# Check for the SSH2 DSA key
	if [ ! -f /etc/ssh_host_dsa_key ] ; then
		echo Generating DSA Key...
		echo THIS CAN TAKE A MINUTE OR TWO DEPENDING ON YOUR PROCESSOR!
		echo
		/usr/bin/ssh-keygen -t dsa -f /etc/ssh_host_dsa_key -C '' -N ''
	fi

	# Check for the SSH2 ECDSA key
	if [ ! -f /etc/ssh_host_ecdsa_key ]; then
		echo Generating ECDSA Key...
		echo THIS CAN TAKE A MINUTE OR TWO DEPENDING ON YOUR PROCESSOR!
		echo
		/usr/bin/ssh-keygen -t ecdsa -f /etc/ssh_host_ecdsa_key -C '' -N ''
	fi

	echo -n "Starting sshd: "
	/usr/sbin/sshd
	touch /var/lock/sshd
	echo "OK"
}
stop() {
	echo -n "Stopping sshd: "
        killall	sshd
	rm -f /var/lock/sshd
	echo "OK"
}
restart() {
	stop
	start
}

case "$1" in
  start)
  	start
	;;
  stop)
  	stop
	;;
  restart|reload)
  	restart
	;;
  *)
	echo "Usage: $0 {start|stop|restart}"
	exit 1
esac

exit $?

